#!/usr/bin/perl

#/************************************************************************************\
# * Copyright(c) 2006 Dan Kruchinin (aka asgard)                                     *
# *                                                                                  *
# *                                                                                  *
# * This program is free software; you can redistribute it and/or                    *
# * modify it under the terms of the GNU General Public License                      *
# * as published by the Free Software Foundation; either version 2                   *
# * of the License, or (at your option) any later version.                           *
# *                                                                                  *
# * This program is distributed in the hope that it will be useful,                  *
# * but WITHOUT ANY WARRANTY; without even the implied warranty of                   *
# * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the                    *
# * GNU General Public License for more details.                                     * 
# *                                                                                  *
# * You should have received a copy of the GNU General Public License                *
# * along with this program; if not, write to the Free Software                      *
# * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.  *
#\************************************************************************************/

use strict;

my $cur_dir = $ARGV[0];

$cur_dir = "." if($cur_dir eq "");
dirs($cur_dir);

sub dirs()
{
	my $dir = $_[0];
	my @s = undef;

	chdir($dir) or die("Can't cd to $dir directory\n");
	opendir(DFD, ".") or die("Can't open directory $dir\n");

	foreach my $file (readdir(DFD)) {
		 next if(($file eq ".") || ($file eq ".."));

		if(-d $file) {
			dirs($file);
		}
		elsif(($file eq "semantic.cache") || ($file =~ m/.+~/) || ($file =~ m/^#.+#$/)) {
			print "--> clean $dir/$file\n";
			unlink($file);
		}
	}

	closedir(DFD);
	chdir("..")
}

